For current song recommendation in the related art, songs may be recommended to a user basically by analyzing the user's listening behavior and habit data. The user can only receive them passively but cannot select. However, the reality is that, the user's listening needs may be varied with current mood, environment and other factors. For example, A is a shy girl and likes to listen to Eason Chan' songs, while she likes to hear some excitement songs when facing with some unpleasant things. However, a recommendation system cannot be aware of the user's emotion. As another example, B likes to listen to Beyond' songs, while he prefers listening to soothing, gentle music in the bus, subway and other noisy environments. However, the recommendation system cannot be aware of the user's current environment. So the recommendation system cannot recommend the right songs, namely is short of real-time, flexibility and usability.